package com.ys.entity.finance;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TCW_WanliExchangeRate", catalog="Id")
public class TcwWanliExchangeRate extends BaseEntity<TcwWanliExchangeRate> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="DepositPlatformCode", nameJava="depositPlatformCode", typeDataBase="varchar")
	private String depositPlatformCode;
	@YsField(nameDataBase="CurrencyCode", nameJava="currencyCode", typeDataBase="varchar")
	private String currencyCode;
	@YsField(nameDataBase="TargetCurrencyCode", nameJava="targetCurrencyCode", typeDataBase="varchar")
	private String targetCurrencyCode;
	@YsField(nameDataBase="ExchangeRate", nameJava="exchangeRate", typeDataBase="decimal")
	private BigDecimal exchangeRate;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="RefreshTime", nameJava="refreshTime", typeDataBase="datetime")
	private Date refreshTime;
	@YsField(nameDataBase="CountTimeStart", nameJava="countTimeStart", typeDataBase="varchar")
	private String countTimeStart;
	@YsField(nameDataBase="CountTimeEnd", nameJava="countTimeEnd", typeDataBase="varchar")
	private String countTimeEnd;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TcwWanliExchangeRate setId(Long id) {
		this.id = id;
		return this;
	}
	public String getDepositPlatformCode() {
		return depositPlatformCode;
	}
	public TcwWanliExchangeRate setDepositPlatformCode(String depositPlatformCode) {
		this.depositPlatformCode = depositPlatformCode;
		return this;
	}
	public String getCurrencyCode() {
		return currencyCode;
	}
	public TcwWanliExchangeRate setCurrencyCode(String currencyCode) {
		this.currencyCode = currencyCode;
		return this;
	}
	public String getTargetCurrencyCode() {
		return targetCurrencyCode;
	}
	public TcwWanliExchangeRate setTargetCurrencyCode(String targetCurrencyCode) {
		this.targetCurrencyCode = targetCurrencyCode;
		return this;
	}
	public BigDecimal getExchangeRate() {
		return exchangeRate;
	}
	public TcwWanliExchangeRate setExchangeRate(BigDecimal exchangeRate) {
		this.exchangeRate = exchangeRate;
		return this;
	}
	public Date getRefreshTime() {
		return refreshTime;
	}
	public TcwWanliExchangeRate setRefreshTime(Date refreshTime) {
		this.refreshTime = refreshTime;
		return this;
	}
	public String getCountTimeStart() {
		return countTimeStart;
	}
	public TcwWanliExchangeRate setCountTimeStart(String countTimeStart) {
		this.countTimeStart = countTimeStart;
		return this;
	}
	public String getCountTimeEnd() {
		return countTimeEnd;
	}
	public TcwWanliExchangeRate setCountTimeEnd(String countTimeEnd) {
		this.countTimeEnd = countTimeEnd;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TcwWanliExchangeRate setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TcwWanliExchangeRate setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TcwWanliExchangeRate setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TcwWanliExchangeRate tcwWanliExchangeRate(
		String depositPlatformCode,
		String currencyCode,
		String targetCurrencyCode,
		BigDecimal exchangeRate,
		Date refreshTime,
		String countTimeStart,
		String countTimeEnd,
		Integer status
			) {
		TcwWanliExchangeRate entity = new TcwWanliExchangeRate();
		entity.setDepositPlatformCode(depositPlatformCode);
		entity.setCurrencyCode(currencyCode);
		entity.setTargetCurrencyCode(targetCurrencyCode);
		entity.setExchangeRate(exchangeRate);
		entity.setRefreshTime(refreshTime);
		entity.setCountTimeStart(countTimeStart);
		entity.setCountTimeEnd(countTimeEnd);
		entity.setStatus(status);
		return entity;
	}
}